home *** CD-ROM | disk | FTP | other *** search
/ Assassins - Ultimate CD Games Collection 1 / Assassins - Ultimate CD Games Collection (1994)(Weird Science)(Track 1 of 2)[!][Amiga-CD32-CDTV][CDD5332].iso / instructions / shootups / solarwar < prev    next >
Text File  |  1978-10-10  |  32KB  |  786 lines

  1.  
  2.  
  3.  
  4.         Solar System Wars -- Version 1.14
  5.  
  6. Copyright © 1992 James Cleverdon.  All Rights Reserved.
  7.  
  8. The binary copy of THIS version of SSW and its other files may be freely
  9. distributed for non-commercial purposes, including and especially by
  10. Fred Fish's wonderful collection of software.
  11.  
  12. More legal garbage and disclaimers below.
  13.  
  14.  
  15.            New Features for Version 1.14
  16.  
  17. * First public release!
  18.  
  19. * All new support for two-button joysticks!
  20.  
  21. * Everyone now gets Hyperspace all the time, as well as an extra weapon
  22.   from the Options menus!
  23.  
  24. * Double-thick shields for EXTRA protection!
  25.  
  26. * Improved color register handling for superior performance without
  27.   the earlier glitching problems!
  28.  
  29. * Much smoother motion, because now SSW does one game cycle (complete with
  30.   all gravity calculations) for every screen frame, even on standard A1000
  31.   and A500 machines!  Yes, that's 50Hz for PAL and 60Hz for NTSC.  The only
  32.   exception is for cycles involving sprite collisions, which take two
  33.   screen frames per game cycle.
  34.  
  35. * All of the gravity and update subroutines have been redone in
  36.   hand-optimized assembly code for extra speed, plus the added bonus of
  37.   now fitting entirely in the instruction caches of 68020 and 68030 CPUs!
  38.  
  39. * Tested on A1000 (OS 1.3), A500 (OS 1.3), and A3000 (OS 2.04).
  40.   Should run under OS 2.1.  Will almost certainly break on an AGA chip
  41.   machine.  Is free of Enforcer hits on A3000.
  42.  
  43. * Multi-tasks.    (SSW should be the highest priority CPU-intensive task
  44.   for smoothest game play.)
  45.  
  46. Throw away any older versions of SSW that may have escaped earlier!  This
  47. is the latest and greatest!
  48.  
  49.  
  50.  
  51.                 Requirements
  52.  
  53. * Runs under OS 1.3 or 2.0X, and probably 2.1, but not 3.X.
  54.  
  55. * Needs 195K of Fast RAM and 39K of Chip RAM, in fairly large pieces.
  56.   (Fragmented memory may prevent SSW from running, even if there is enough
  57.    chip and fast ram listed by the Avail command.)
  58.  
  59. * Only needs 4K of stack space, but I'm keeping SAS/C's default of 8K
  60.   in SSW.info.
  61.  
  62. * Requires all of the hardware sprites and all 4 audio channels.
  63.  
  64. * Works with one-button digital joysticks (standard Amiga joysticks), but
  65.   two-button digital joysticks are strongly advised.  Instructions for
  66.   joystick re-wire are included below.    Does not support analog joysticks.
  67.  
  68.  
  69.  
  70.                Quick Start-up
  71.  
  72. * Install SSW.
  73.     + If SSW isn't compressed and came on a floppy, either run it from
  74.       the floppy, or just drag the SSW drawer to RAM or onto your hard
  75.       drive.
  76.     + If SSW came compressed, or was downloaded, create a drawer named SSW
  77.       and decompress the archive file in the usual way:
  78.     * Make a new drawer (directory) named SSW
  79.     * open up a shell and CD SSW
  80.     If you have SSW.lha:  lha -x -a -m x SSW.lha
  81.     If you have SSW.zoo:  zoo -extract SSW.zoo
  82.     * If operating under OS 1.3, then:
  83.         -  delete SSW.info
  84.         -  rename SSW.1.3.info SSW.info
  85.       Otherwise, if operating under OS 2.0 or greater:
  86.         -  delete SSW.1.3.info
  87.  
  88. * Hook up a joystick to Joyport 1, and either be ready to plug in a second
  89.   joystick into Joyport 0, or familiarize yourself with the keyboard
  90.   control keys.  If you have two-button digital joysticks now is the time
  91.   to use them!    Or, you can use ordinary one-button joysticks and some
  92.   keys on the keyboard.
  93.  
  94. * Start up SSW.  Use either the Workbench or the Shell.  Be sure that
  95.   either its files are in the drawer with SSW, or else enter in the Shell:
  96.     assign SSW: drawer_containing_files
  97.  
  98. * Select any desired options from the menu with the mouse or keyboard.
  99.   (See below for a list of menu command keys.  Also, a file named
  100.   Menu.keys has been provided for easy reference and printing.)
  101.   An especially fun option is the Random Game (RightAmiga-R), which will
  102.   randomly select solar systems for each round, along with a random extra
  103.   weapon for each player.  There are also menus for torpedo velocity,
  104.   torpedo life, ship thrust, etc.
  105.  
  106. * If you will be playing with two joysticks, then replace the mouse with
  107.   the second one now.  Then press RightAmiga-1 to switch to joystick
  108.   control.
  109.  
  110. * Enjoy!  The first player to reach 20 points wins!
  111.  
  112.  
  113.  
  114.            Joystick and Keyboard Control
  115.  
  116.   Joystick control:
  117.     Button   : Fire photon torpedo
  118.     Left/Rght: Turn Left/Right
  119.     Forward  : Thrust
  120.     Back     : Hyperspace
  121.     Button2  : Extra weapon
  122.     (If you do not have two-button joysticks, the keyboard Extra keys:
  123.      port 0: ENTERRSHIFT
  124.      port 1: LSHIFT)
  125.  
  126.   Keyboard control:
  127.    (the numbers are on the keypad, not above the keyboard)
  128.     DOWN,   5: Fire photon torpedo
  129.     RETURN, 0: Hyperspace
  130.     LEFT,   4: Turn Left
  131.     RIGHT,  6: Turn Right
  132.     UP,     8: Thrust
  133.     RSHIFT, 2: Extra weapon
  134.     7         : Left & Thrust
  135.     9         : Right & Thrust
  136.  
  137.   Program control:
  138.     ESC,    Q: Quit
  139.     P         : Pause
  140.     HELP     : Displays Help requester
  141.  
  142.  
  143.  
  144.                Common Gotchas
  145.  
  146. * Make sure the file named SSW.grv is in the current directory, or located
  147.   at the SSW: assignment.  Otherwise, SSW will complain and die.
  148.  
  149. * You may need to adjust the screen position Preferences in order to see
  150.   the seventh sprite.  In other words, if the purple ship's plasma bolt
  151.   and seeker don't show up on the screen, do the following:
  152.     + quit SSW -- type 'Q', followed by 'Y'
  153.     + open the Preferences program for OS 1.3, or for OS 2.X and beyond,
  154.       run the Overscan program in the Prefs drawer and select
  155.       Edit Standard Overscan
  156.     + shift the default screen position a little bit to the right
  157.     + leave via the Use gadget
  158.     + run SSW again
  159.   Keep trying this until you find a screen position that allows the 7th
  160.   sprite to appear, and best fits your monitor.  Once you have this,
  161.   either save this setting in Preferences, or use one of the public
  162.   domain Preferences savers to save this setting in a file for easy recall
  163.   later.  (Prefs savers are available on Fred Fish disks and many BBSs.)
  164.  
  165. * If you've forgotten to press RightAmiga-1, then a joystick plugged
  166.   into the mouse joyport won't do anything useful.
  167.  
  168.  
  169.  
  170.                           Menus Explained
  171.  
  172. A = Right Amiga Key, C = Control Key, other keys such as ESC are named
  173.  
  174. Project
  175.   Pause?           A-P        Pause the game
  176.   New               A-N        Start a New game
  177.   About...           HELP, AC-A
  178.   Screen To Front      A-[        Move the SSW screen to the front
  179.   Screen To Back       A-]        Push the SSW screen to the back
  180.   Quit...           A-Q        Leave SSW
  181.  
  182. System
  183.   No Primaries           A-0        No stars at all
  184.   One Primary                Your ship orbits one star
  185.     Red Dwarf           A-E
  186.     Yellow Star        A-Y
  187.     Blue Giant           A-B
  188.     Small Black Hole   A-T
  189.     Medium Black Hole  A-U
  190.     Large Black Hole   A-I
  191.   Two Primaries             Your ship orbits two stars
  192.     Red Dwarves        A-O
  193.     Red / Yellow       A-{
  194.     Red / Blue           A-}
  195.     Red / Sml BH       A-D
  196.     Red / Med BH       A-F
  197.     Red / Lrg BH       A-G
  198.     Yellow Stars       A-H
  199.     Yellow / Blue      A-J
  200.     Yellow / Sml BH    A-K
  201.     Yellow / Med BH    A-;
  202.     Yellow / Lrg BH    A-:
  203.     Blue Giants        A-'
  204.     Blue / Sml BH      A-"
  205.     Blue / Med BH      A-Z
  206.     Blue / Lrg BH      A-X
  207.     Small Black Holes  A-C
  208.     Sml BH / Med BH    A-V
  209.     Sml BH / Lrg BH    A-,
  210.     Medium Black Holes A-<
  211.     Med BH / Lrg BH    A-.
  212.     Large Black Holes  A->
  213.   Three Primaries            Your ship orbits three stars
  214.     Red / Yel / Yel    A-/
  215.     Yel / Blue / Blue  A-?
  216.     Yel / SBH / SBH    A-DEL
  217.     Blue / MBH / MBH   A-ESC
  218.     BH: S / M / M      AC-B
  219.     BH: M / L / L      AC-G
  220.   Misc. Systems             Other solar systems
  221.     Black Ellipse      A-BackSpace
  222.     Wide Red Binary    AC-J
  223.     Wide Yellow Binary A-)
  224.     Wide Blue Binary   A-`
  225.     Wide Sml BH Binary A-~
  226.     Wide Med BH Binary A-Space
  227.     Wide Lrg BH Binary A-Tab
  228.   Asteroid?           A-A        Add an asteroid to 0/1 star games
  229.   Random Game?           A-R        Random system/weapons every round
  230.  
  231. Options
  232.   Ship Thrust                Pick ship thrust
  233.     Low            A-_
  234.     Medium           A-+
  235.     High           A-|
  236.   Torp Velocity             Pick photon torpedo velocity
  237.     Low            A--
  238.     Medium           A-=
  239.     High           A-\
  240.   Torp Lifetime             Pick photon torpedo lifetime
  241.     Short           A-S
  242.     Medium           A-M
  243.     Long           A-L
  244.   Screen Wrap?           A-W        Pick screen wrap/bounce
  245.   Green Ship Opts
  246.     Joyport 0           A-1        Control from mouse port
  247.     Joyport 1           A-2        Control from joystick port
  248.     Keyboard           A-3        Control from keyboard
  249.     Full Shields       A-4        Be immune to photon torpedoes
  250.     Flip Ship           A-5        Do 180 degree flip
  251.     Cloaking           A-6        Become invisible
  252.     Plasma Bolt        A-7        Shoot ball of electric death
  253.     Quad Thrust        A-8        Accelerate with quadruple thrust
  254.     Seeker           A-9        Fire seeker missile
  255.   Purple Ship Opts
  256.     Joyport 0           A-!        --Ditto--
  257.     Joyport 1           A-@
  258.     Keyboard           A-#
  259.     Full Shields       A-$
  260.     Flip Ship           A-%
  261.     Cloaking           A-^
  262.     Plasma Bolt        A-&
  263.     Quad Thrust        A-*
  264.     Seeker           A-(
  265.  
  266.  
  267.  
  268.                Weapons, etc.
  269.  
  270. Photon Torpedo -- shoot a simple missile in the direction your ship
  271.   is currently pointing.  A torpedo's initial velocity and lifetime are
  272.   controlled by Options sub-menus.  You may only have nine torpedoes in
  273.   flight at one time, but torpedoes are otherwise unlimited.
  274.  
  275. Regular Shields -- a gray ring around your ship that absorbs Photon
  276.   Torpedos, Plasma Bolts, and Seekers, as well as providing limited
  277.   protection from collisions with asteroids and stars.    Torpedos erode
  278.   holes in your shields, exposing your ship to sudden destruction.
  279.   Contact with a star, opponent, asteroid, Plasma Bolt, or Seeker will
  280.   overload and destroy your shield generator.
  281.  
  282. Regular thrust -- accelerates your ship in the direction it points.
  283.   The thrust level is controlled by an Options sub-menu.  Fuel is
  284.   unlimited.
  285.  
  286. Hyperspace -- activated by pulling directly back on a joystick (no
  287.   diagonals!) or by pressing the RETURN key or 0 on the keypad.
  288.   Hyperspace will teleport your ship to a random location on the screen.
  289.   It takes time for Hyperspace to warp you out and back.  Your controls
  290.   will be frozen during this time.  Also, the hyperspace field generator
  291.   takes about two seconds to recharge and be available for use again.
  292.  
  293. Full Shields -- when activated, your ship becomes a gray octagon,
  294.   totally immune to photon torpedoes.  Full shields are lost under any
  295.   circumstances that would overload your regular shields.  Your regular
  296.   shields are lost whenever the Full Shields are lost.    Your other
  297.   controls are frozen while the shields are up.  Full Shields only
  298.   stay up for a maximum of about two seconds before dropping.  There is
  299.   an about one-half second full shield generator recharge delay.
  300.  
  301. Flip Ship -- do a 180 degree flip.  There is a short recharge delay.
  302.  
  303. Cloaking -- your ship becomes invisible, except for a slight wavering
  304.   in the background stars.  You may turn and accelerate while cloaked,
  305.   at the cost of becoming partly visible, but may not fire any weapons.
  306.   Cloaked ships are not tracked by Seekers.  There is an about one-half
  307.   second cloaking device recharge delay.
  308.  
  309. Plasma Bolt -- shoots a large, writhing ball of energy.  Has a limited
  310.   range, and will be detonated by "just one" photon torpedo.  You may not
  311.   fire another bolt until the first is gone.
  312.  
  313. Quad Thrust -- accelerates your ship with four times its normal
  314.   acceleration.  Note that SSW does have a maximum allowed speed for
  315.   all objects (the "speed of light"), which is easy to reach using
  316.   Quad Thrust.
  317.  
  318. Seeker -- fires a missile which will seek out and hit your opponent.
  319.   In fairness to the other player, Seekers are very simple-minded.
  320.   Seekers can not track Cloaked ships (despite S.T. 6), but will keep
  321.   their last acceleration vector.  You may not fire another seeker until
  322.   the first is gone.
  323.  
  324.  
  325.  
  326.        Known Offences Against the OS 2.0 Style Guide
  327.  
  328. * Topaz 8 is hard-coded into the menus, requesters, and opening screen.
  329.  
  330. * Not Internationalized.
  331.  
  332. * Uses raw key events without proper mapping.
  333.  
  334. * Turns off the mouse when a player is using Joyport 0.
  335.  
  336. * SSW's screen does not have drag or depth gadgets.  (See the Screen
  337.   To Back and Screen To Front menu entries for a replacement.)
  338.  
  339. * The Quit and About requesters are not draggable or depth arrangable,
  340.   and do not set a "Wait" pointer in the main window when activated.
  341.  
  342. * Game settings cannot be saved or loaded.
  343.  
  344. * Doesn't read Tool Types from icon files.
  345.  
  346. * Pays no attention to Shell command line arguments.
  347.  
  348.  
  349.  
  350.              Known Deficiencies
  351.  
  352. * The use of keyboard screen dragging will misalign the sprites with
  353.   SSW's screen.
  354.  
  355. * Uses hardware collision detection for all collisions except between
  356.   photon torpedoes -- the Twilight Zone on Wrap games is a safety zone
  357.   from all collisions.    Also, because there are no detection bits for
  358.   collisions between members of a sprite pair, your own Plasma Bolts
  359.   and Seekers won't kill you.
  360.   (Twilight Zone: the off-screen part of the game playfield.)
  361.  
  362. * I can find no easy way of knowing whether the SSW screen is in the
  363.   foreground, at least not without digging deep into private Intuition
  364.   data.  This makes it hard for the Copper interrupt routine to
  365.   know whether to consume the Copper interrupt, or not.  So I play
  366.   around with the ScreenToFront and ScreenToBack functions and window
  367.   activation events to try to insure that either SSW's screen is in front
  368.   of all others, or that it is in back and the game is paused.
  369.  
  370. * Because of the fact that SSW jams its own values into the posctldata
  371.   fields of sprites, and uses several low-level hardware registers, SSW
  372.   has no chance of working with the AGA chip set.
  373.  
  374. * Since SSW uses a quick-and-dirty approximation for faster gravity
  375.   calculations, some star systems are unstable.  Trinary systems will
  376.   hit the screen edge after about 10 to 13 minutes.  This is almost
  377.   never a problem, since most rounds last under two minutes.
  378.  
  379. * Uses ADCMD_LOCKs on the audio device, so it will release a requested
  380.   channel, then attempt to reallocate it.  All this is according to the
  381.   rules in the RKM, which allow sharing of audio channels.  However,
  382.   some program's attempts to allocate an audio channel don't wait long
  383.   enough for SSW's locks to be released, and fail.
  384.  
  385.  
  386.  
  387.            Potential Portability Problems
  388.  
  389. * The ScreenToBack menu selection uses a probably non-portable kludge
  390.   to activate the foremost window in the Workbench screen.
  391.  
  392. * Uses hardware registers for sprite/playfield collision detection, and
  393.   changes the POTGO register to use two button joysticks.
  394.  
  395. * Directly modifies the posctldata fields of sprites, so anything that
  396.   shifts SSW's view origin will confuse the sprite positioning.
  397.  
  398. * Reads hardware for both joysticks.
  399.  
  400. * Uses RAWKEY events for the keyboard, so no keymap translations, or
  401.   localization.
  402.  
  403. * Installs its own Copper interrupt, and may not work well with other
  404.   Copper interrupts.
  405.  
  406. * Assumes that Intuition screens use standard BitMaps.
  407.  
  408. * Bypasses the graphics library to read and write photon torpedoes, but
  409.   uses MENUVERIFY and REQVERIFY to synchronize with Intuition.
  410.  
  411. * The structure used by the copper interrupt handler isn't in PUBLIC
  412.   memory, as per the manuals.  This won't matter until virtual memory
  413.   is attempted by Commodore.
  414.  
  415. * Sets and clears the CHECKED flag directly in MenuItems, although
  416.   protected by Disable/Enable.
  417.  
  418.  
  419.  
  420.                Implementation Details
  421.  
  422. * Sets up a Low-Res Dual Playfield screen with two bit-planes in either
  423.   PAL or NTSC mode, based on presence of the PAL bit in GfxBase.  This
  424.   means that a NTSC A3000 will display a NTSC screen, even if it is
  425.   displaying a PAL Workbench.  Sorry, I couldn't find a legal way to
  426.   override this, since any attempt to use NTSC/PAL Display IDs is set
  427.   back to DEFAULT_MONITOR when doing the MakeScreen/RethinkDisplay after
  428.   attaching the Dual Playfield.  Maybe this will change for OS 2.1.
  429.  
  430. * Installs a Copper interrupt Server and adds a Copper interrupt to the
  431.   screen.
  432.  
  433. * Adds a high-priority (126) Input Event handler to the food chain to eat
  434.   RAWMOUSE events when a joystick is plugged into joyport 0.  Otherwise,
  435.   the menus would appear every time joystick 0's second button was pressed.
  436.   This also keeps DMouse and other screen/mouse blankers or other
  437.   Commodities from sometimes doing the wrong thing, like pushing the
  438.   current screen to the back.  The handler is turned on whenever a player
  439.   is using joyport 0, and the game isn't paused.
  440.  
  441. * Sorry, can't use AutoRequest or any other window-based requesters for
  442.   the few requesters SSW uses.    I need the WINDOWACTIVATE and deactivate
  443.   events to tell me when SSW has been pushed into the background.  This
  444.   means using layer-based requesters that don't seem to be draggable.
  445.   Yet another offense against the Style Guide.
  446.  
  447. * Allocates audio channels at priority -50, the highest standard level
  448.   for sound effects.
  449.  
  450.  
  451.  
  452.               Ask Capt'n Quirk
  453.  
  454. And now that grizzled and grouchy, veteran of Solar System Wars, Captain
  455. Quirk -- one who deals out insults, death, and run-on sentences in all
  456. directions, will answer some of your questions about game strategy!
  457.  
  458.    Thank you, worthless pandering announcer.  There's a big backlog today,
  459.    so let's go right to the first member of the audience:
  460.  
  461. Q: How can I keep from getting blown out of the sky whenever my opponent
  462.    gets Seeker and I get something wimpy like Cloaking?
  463.  
  464. A: What!  You've got Cloaking against Seeker and you come whining to me?
  465.    Get yer pathetic rear-end back out in the arena and USE Cloaking!
  466.    Once you are cloaked, Seekers can't track your ship!  However, they
  467.    will keep their last heading, so if you uncloak to fire off a burst of
  468.    torpedoes, then recloak after a Seeker is coming your way, be sure to
  469.    accelerate away from your last course.  That will fool 'em every time.
  470.  
  471. Q: Suppose I don't have Cloaking, but have Flip instead?
  472.  
  473. A: Do I have to do all your thinking for you?  Haven't you noticed how
  474.    totally stupid Seekers are?  Just get something massive, like a star
  475.    or an asteroid between you and it and the Seeker will mindlessly ram
  476.    into it.  What's more, Seekers never consider gravity in their tracking,
  477.    programs and are easily confused by Black Hole's, or even Yellow Star's
  478.    gravity.
  479.  
  480. Q: I try all that and still get fried.    Now what?
  481.  
  482. A: Get out of here!  <draws and waves blaster menacingly>  I haven't even
  483.    mentioned shooting Seekers with torps, warping out of danger with
  484.    Hyperspace, outrunning them with Quad Thrust, or blasting them with
  485.    Plasma Bolts.
  486.  
  487.    Next questioner.
  488.  
  489. Q: If my ship can Cloak, why can't it fire Plasma Bolts when uncloaked?
  490.    I saw that very move on an old episode of Star T<<ZZAAPP!!>>
  491.  
  492. A: <blowing on blaster barrel> Sorry, sonny!  You tried to say the "S.T."
  493.    phrase, which is a registered trademark of Paramount Corporation.
  494.    Don't even THINK of saying it on my show.
  495.  
  496.    Speaking of things we don't mention, <points blaster at camera> I
  497.    don't want six hundred of you weekend-SSW geeks out there writing in
  498.    and telling me that on S.T. 6 they had a modified torpedo track a
  499.    cloaked ship.  <blasts nearby table>  I know that, and thought it was
  500.    a stupid plot gimmick when I saw the movie.    Typical lazy
  501.    screenwriters!  <burns a microphone cable in two>
  502.  
  503.    <takes a sheath of papers from a trembling stagehand>
  504.    Our next question is from a fax:
  505.  
  506. Q: I have a hard time reaching the keyboard to use my Extra weapon.  How
  507.    do you manage?
  508.  
  509. A: Now that's a fair question.  Either get into the habit of reaching for
  510.    a shift key on the keyboard, or buy or build yourself some two button
  511.    digital joysticks.  If you can locate a nine wire joystick cable and
  512.    find some joysticks that have enough room inside to install a normally
  513.    open push-button, then its easy to rewire an existing joystick.
  514.  
  515.    One more thing:  take the usual precautions when dealing with hot
  516.    solder, connecting anything homemade up to your Amiga, etc.  If some
  517.    pitiful excuse for a lawyer shows up on my doorstep, trying to serve
  518.    me a lawsuit because I didn't warn you not to do something truly
  519.    stupid, then I'll burn the lawyer down where he stands and spit on
  520.    the ashes.
  521.    <waves blaster, picture bounces as cameraman dives for cover>
  522.    But, I've already been warned twice that I'm over my Lawyer limit for
  523.    this season -- so don't screw up, OK?
  524.  
  525.    Now a question from the audience.
  526.  
  527. Q: Why are the orbits around Blue / Medium, Small / Medium, Yellow / Large,
  528.    Red / Medium, and Medium / Large Binaries unstable, especially in a
  529.    Bounce game?
  530.  
  531. A: Good question -- I won't kill you.
  532.    <vaporizes an innocent bystander instead>  Those orbits have
  533.    resonances with those of their primaries.  That, along with the crude
  534.    approximation that passes for gravity in SSW does the rest.    Anyway,
  535.    what do you care about orbits?  Are you a pilot, or what?
  536.  
  537.    Here's another fax:
  538.  
  539. Q: Cap'n Quirk, just what is Flip Ship good for?  Maybe nothing?
  540.  
  541. A: Maybe you've never found yourself around a Wide Large Black Hole
  542.    Binary, doing an orbit once every second?  Maybe you've never had to
  543.    suddenly thrust in the opposite direction because you were coming too
  544.    close to a Blue Giant?  Maybe you've never had an enemy warp in
  545.    directly behind you?  No doubt you've never had to handicap yourself
  546.    when playing against a novice player! <throws fax into air, blasts it>
  547.  
  548.    What is the younger generation coming to?  For Zelkor's sake, use
  549.    some imagination, will you?
  550.  
  551.    This will be our last question today.  From the audience:
  552.  
  553. Q: I had just about peeled all the shields from my opponent while only
  554.    taking one or two hits myself, and was coming back in from the Twilight
  555.    Zone to finish him off, when I blew up for no reason at all.
  556.    What happened?
  557.  
  558. A: At last, a question worth answering.  Remember that while you are in
  559.    the Twilight Zone the Amiga hardware collision detection circuitry
  560.    isn't checking for collisions.  In the Twilight Zone, everyone and
  561.    every torpedo is safe.  However, that also means that a torpedo that
  562.    ordinarily would be absorbed by your shields has a chance of drifting
  563.    inside your shields, and may still be there when you emerge from the
  564.    Twilight Zone.  If that happens to you -- BOOM!
  565.    <Blasts an off-camera object>  To avoid this you can use Full Shields
  566.    on every entrance or exit from the Twilight Zone.  Otherwise, just be
  567.    very careful out there.
  568.  
  569.  
  570. That's all for today, but be sure to listen to the next exciting episode
  571. of "Ask Capt'n Quirk!"
  572. <fade to black as the SWAT team tackles Captain Quirk>
  573.  
  574.  
  575.  
  576.       Legal Garbage and Disclaimers, In Plain English
  577.  
  578. Solar System Wars will not cure world hunger.  It will not bring global
  579. peace.    I do not even guarantee that it is fun to play, or does anything
  580. more useful than waste CPU cycles.
  581.  
  582. If you run this software and your disk drive bursts into flames, or your
  583. 1000 page dissertation on "Why Entropy Is Politically Incorrect" gets
  584. corrupted, or something else goes drastically wrong, you will get my
  585. sympathy but nothing else.  I will not provide any money or other kind
  586. of compensation, no matter how valuable the hardware, software, or data
  587. that you believe SSW, or SSW's interaction with some other piece of
  588. software, has destroyed.
  589.  
  590. If you, or whoever you got SSW from, has hacked, patched, or otherwise
  591. modified this package, then there is no telling what it will do, and I
  592. will not be responsible for any part of any problems such changes cause.
  593.  
  594. If you don't like these limitations on my liability, then do not run
  595. Solar System Wars.  If you do run SSW, then you have agreed to these
  596. limitations.
  597.  
  598. Moreover, while I retain the copyright to Solar System Wars, this
  599. version of SSW may be freely copied for non-commercial purposes, as
  600. thanks for all the fine public domain and freely distributable software
  601. that I have used over the years.  No one may charge more for your copy
  602. of SSW than Fred Fish charges for one Fish disk.  SSW may eventually go
  603. Shareware, in which case there may be registration fees.
  604.  
  605. (Aaarrrggghhhh!  I hate the paranoid attitude such legalisms require.)
  606.  
  607.  
  608.  
  609.            Source Code Availability and Bug Fixes
  610.  
  611. I'm not making the source code available until I decide if I want to make
  612. SSW shareware or not.  Enjoy this copy entirely guilt-free, without any
  613. nagging requests to register, to send money anywhere, or to make Molotov
  614. Cocktails in your basement for the Revolution (any Revolution).
  615.  
  616. The only thing I ask is that you mail to me any bug reports, great ideas,
  617. and general impressions you have about SSW.  If I do decide to release
  618. the source code, I'd like all the obvious bugs fixed first.
  619.  
  620. My address is:
  621.  
  622.         James Cleverdon
  623.         16465 S.W. Estuary Dr., Apt. 101
  624.         Beaverton, OR 97006
  625.         USA
  626.  
  627. Bug fixes will be released via Fred Fish, and the other usual methods.
  628.  
  629. Ports for other machines, especially IBM PC clones?  Get real!    SSW relies
  630. too heavily on the Amiga custom chips.
  631.  
  632.  
  633.               Acknowlegements
  634.  
  635. Thanks to my play testers:  Clark MacDonald who had the 9-wire cables and
  636. let me crash his A3000, David Roemer for lots of good ideas (especially
  637. the random game option), Stewart Boutcher for deadly fire and French
  638. Vanilla ice cream, and all the others including the Bush Harbor Day gang.
  639.  
  640.  
  641.  
  642.                File Manifest
  643.  
  644. Here are the files you should have received:
  645.  
  646.        Name      Size       What
  647.  
  648.     Menu.keys      2019    (menu keys text)
  649.     Menu.keys.info       734    (its icon)
  650.     SSW         62208    (the program)
  651.     SSW.1.3.info       450    (the OS 1.3 icon)
  652.     SSW.info       463    (the OS 2.X icon)
  653.     SSW.doc      31590    (this document)
  654.     SSW.doc.info       734    (its icon)
  655.     SSW.grv     123904    (the gravity table)
  656.  
  657.  
  658.  
  659.           Instructions for Two-Button Joysticks
  660.  
  661. First, a crude ASCII picture of the end of a joystick cable.  This is
  662. the DB-9 that plugs into your Amiga, taken from the Hardware Guide:
  663.  
  664.      _____________________
  665.     /              \     The numbers are pin numbers.
  666.     |  5   4   3   2   1  |
  667.      \             /        Viewed as you would look into
  668.       \  9     8   7     6  /        its end.  Note:  female pins.
  669.        \_______________/
  670.  
  671.     Pin  Joystick  Mouse        * = optional button
  672.  
  673.      1   forward   V-pulse
  674.      2   back      H-pulse
  675.      3   left      VQ-pulse
  676.      4   right     HQ-pulse
  677.      5   ---       middle button*
  678.      6   button1   left button
  679.      7   ---       +5V
  680.      8   GND       GND
  681.      9   button2*  right button
  682.  
  683. All you have to do is add a normally-open push-button with one of
  684. the button's terminals connected to pin 8 (ground), and the other
  685. connected to pin 9 (button2).  Push the button, which will ground pin 9,
  686. and fire a plasma bolt.  Easy?    Maybe.
  687.  
  688. Standard joystick cables don't include pin 9.  I was lucky enough to
  689. have a friend who had a bundle of premade DB-9 cables with all 9 wires
  690. left over from a previous job.
  691.  
  692. You may not be so fortunate.  Check electronic surplus stores.    Look
  693. carefully to make sure that there are pins in all nine holes.  Get a
  694. continuity tester and verify that every wire you need is really there.
  695.  
  696. Another problem is finding a joystick that has enough room to allow
  697. an extra button.  Also, it is hard to find a small push-button that is
  698. both reliable and durable, plus has a button large enough not to leave
  699. an imprint in your thumb at the end of a difficult game.
  700.  
  701. I'm assuming that you have at least some skill at electronics. If not,
  702. check with someone who is skilled, or read the basic-technique articles
  703. in an electronics hobby magazine.  If you've done all that, then I won't
  704. need to tell you:
  705.  
  706. * Don't burn yourself.
  707.  
  708. * Be sure to insulate all your solder joints with electrician's tape or
  709.   heat-shrink tubing.
  710.  
  711. * Test the finished product with a continuity tester.  Connect it between
  712.   pin 9 and pin 8 on the joystick DB-9 connector.  The light should
  713.   come on, the buzzer should buzz, or the ohmmeter should go to a low
  714.   resistance value when the new button is pushed.  When it is released,
  715.   the light should go out, the buzzer will be quiet, or the ohmmeter will
  716.   read very high (or infinite) resistance.
  717.  
  718. About the only way you can damage your Amiga is by somehow connecting
  719. the +5V line (pin 7) to ground (pin 8).  Since you won't even be working
  720. with pin 7, this shouldn't happen.  Test for this mistake anyway.
  721. Be happy by being paranoid about Murphy's Laws.
  722.  
  723.  
  724.  
  725.                 References
  726.  
  727. "Space Wars, or Turning Your Oscilloscope into a Telescope," Byte, way
  728. long ago.
  729.  
  730.  
  731.  
  732.               Thoughts for the Future
  733.  
  734. * Since I have to install an Input Event handler that eats RAWMOUSE
  735.   events, then Intuition can't be moving the mouse pointer while the
  736.   handler is turned on (unless someone uses the keyboard mouse mover).
  737.   If so, why can't I use sprite 0?  How about four-star solar systems?
  738.   (There are only two sets of color registers, so there could only be
  739.   as many 4-star systems as 2-star.)
  740.  
  741. * Many analog joysticks have two buttons.  Since I already have to go
  742.   directly to the hardware for digital joysticks, maybe I can support
  743.   analog as well.....
  744.  
  745. * Can the Planet Cruncher be worked in somehow?  How about a Tholian
  746.   web?
  747.  
  748. * What about a "Death Blossom" kind of weapon that shoots torpedos in
  749.   eight different directions?  Or, maybe an Ack-ack weapon that shoots
  750.   a sprite which explodes into a spray of torpedos.
  751.  
  752. * Maybe Flip Ship will go away.
  753.  
  754. * Would a Tractor Beam be useful?  Or, a Pressor Beam?
  755.  
  756. * I would like to do a laser beam, except that there is a 16 pixel
  757.   width limit on sprites, and the underlying code expects that only
  758.   point sources and spherically symmetric objects will be experiencing
  759.   gravity.  (E.g. no provisions for bending an extended light beam
  760.   around a black hole.)
  761.  
  762. * Maybe some way to repair your shields, like don't push a button for
  763.   30 seconds per pixel repaired.
  764.  
  765. * Maybe add more sounds, or allow IFF 8SVX sound files.
  766.  
  767. * Get a real image of an asteroid for the asteroid sprite.
  768.  
  769. * There's another line on the joyport that is used for the middle mouse
  770.   button.  How about 3-button joysticks?  And, what about that rumor on
  771.   comp.sys.amiga.games that some Sega game pads are compatible with
  772.   Amigas and already come with three buttons?  Suppose I assigned Full
  773.   Shields to the third button?
  774.  
  775. * Would it be worthwhile to allow customized space ships?  Can I afford
  776.   the CPU cycles?
  777.  
  778. * Maybe go from a shield erosion model, to a shield heating model, like
  779.   in "The Mote In God's Eye" or E. E. Smith's Lensman series.  Of
  780.   course, to do that right I would have to include heating from stars.
  781.   This should be roughly proportional to the sum of the magnitudes of the
  782.   gravitational force vectors, except for black holes.    And what happens
  783.   when you finally do blow the shields?  BOOM?    Or just lose them?
  784.